Software applications can be subject to computer security breaches using improper or unauthorized control messages from another application. For example, shatter attacks occur when a lower privileged application sends a control message to a higher privileged application. The control message causes the higher privileged application to perform an unsafe task that the lower privileged application could not have performed on its own. Such unsafe tasks include hiding application interfaces, enabling or disabling functionality within an application, or accessing data corresponding to unrelated applications. This can be caused by the higher privileged application failing to perform sufficient validation on arguments passed in the control message.